题目:给定两个字符串str1和str2,如果两个字符串中的字符种类一样且每种字符出现的次数一样,则称str1和str2互为变形词。请实现一个函数,判断两个字符串是否互为变形词。
例:
str1=”123”, str2=”213”, 返回true。
str1=”123”,str2=”2331”,返回false。
实现:
- 如果str1和str2的长度不同,则返回false。
- 假设字符出现的编码在0~255之间,申请长度为256的int型数组map,map[a]=b表示字符a出现了b次。
- 遍历字符串str1,如果遇到相应的字符,就在该位置加1。
遍历字符串str2,如果遇到相应字符就减1,如果小于0了就返回false。遍历完之后所有位置的值都为0,则返回true。
1 | public class IsDeformation { |
1 | //Test |